hive表级权限控制 | 您所在的位置:网站首页 › hive 表授权 › hive表级权限控制 |
Hive权限管理 1、hive授权模型介绍 (1)Storage Based Authorization in the Metastore Server 基于存储的授权 - 可以对Metastore中的元数据进行保护,但是没有提供更加细粒度的访问控制(例如:列级别、行级别)。 (2)SQL Standards Based Authorization in HiveServer2 基于SQL标准的Hive授权 - 完全兼容SQL的授权模型,推荐使用该模式。 (3)Default Hive Authorization (Legacy Mode) hive默认授权 - 设计目的仅仅只是为了防止用户产生误操作,而不是防止恶意用户访问未经授权的数据。 2、基于SQL标准的hiveserver2授权模式 (1)完全兼容SQL的授权模型 (2)除支持对于用户的授权认证,还支持角色role的授权认证 1、role可理解为是一组权限的集合,通过role为用户授权 2、一个用户可以具有一个或多个角色,默认包含另种角色:public、admin 3、基于SQL标准的hiveserver2授权模式的限制 1、启用当前认证方式之后,dfs, add, delete, compile, and reset等命令被禁用。 2、通过set命令设置hive configuration的方式被限制某些用户使用。 (可通过修改配置文件hive-site.xml中hive.security.authorization.sqlstd.confwhitelist进行配置) 3、添加、删除函数以及宏的操作,仅为具有admin的用户开放。 4、用户自定义函数(开放支持永久的自定义函数),可通过具有admin角色的用户创建,其他用户都可以使用。 5、Transform功能被禁用。 4、详细配置 hive.security.authorization.enabled true hive.server2.enable.doAs false hive.users.in.admin.role root hive.security.authorization.managerorg.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory hive.security.authenticator.manager org.apache.hadoop.hive.ql.security.SessionStateUserAuthenticator 5、Hive权限管理命令 --角色的添加、删除、查看、设置: -- 创建角色 CREATE ROLE role_name; -- 删除角色 DROP ROLE role_name; -- 设置角色 SET ROLE (role_name|ALL|NONE); -- 查看当前具有的角色 SHOW CURRENT ROLES; -- 查看所有存在的角色 SHOW ROLES; 6、Hive权限分配图 Action Select Insert Update Delete Owership Admin URL Privilege(RWX Permission + Ownership) ALTER DATABASE Y ALTER INDEX PROPERTIES Y ALTER INDEX REBUILD Y ALTER PARTITION LOCATION Y Y (for new partition location) ALTER TABLE (all of them except the ones above) Y ALTER TABLE ADD PARTITION Y Y (for partition location) ALTER TABLE DROP PARTITION Y ALTER TABLE LOCATION Y Y (for new location) ALTER VIEW PROPERTIES Y ALTER VIEW RENAME Y ANALYZE TABLE Y Y CREATE DATABASE Y (if custom location specified) CREATE FUNCTION Y CREATE INDEX Y (of table) CREATE MACRO Y CREATE TABLE Y (of database) Y (for create external table – the location) CREATE TABLE AS SELECT Y (of input) Y (of database) CREATE VIEW Y + G DELETE Y DESCRIBE TABLE Y DROP DATABASE Y DROP FUNCTION Y DROP INDEX Y DROP MACRO Y DROP TABLE Y DROP VIEW Y DROP VIEW PROPERTIES Y EXPLAIN Y INSERT Y Y (for OVERWRITE) LOAD Y (output) Y (output) Y (input location) MSCK (metastore check) Y SELECT Y SHOW COLUMNS Y SHOW CREATE TABLE Y+G SHOW PARTITIONS Y SHOW TABLE PROPERTIES Y SHOW TABLE STATUS Y TRUNCATE TABLE Y UPDATE Y |
CopyRight 2018-2019 实验室设备网 版权所有 |